/**
 * Copyright (c) subnew
 * Licensed under the GPL;
 * @email:joseanluo@gmail.com
 * @Title: StatusState.java
 * @Package com.subnew.copyman.frame.constant
 */
package com.subnew.mango.frame.constant;

/**
 * 状态标识枚举
 * @author JoseanLuo
 * @date 2014年8月29日 上午9:51:58
 * @version V1.0
 */
public enum StatusState {
	/** 正常(0) */ 
	normal(0,"正常"),
	/** 已删除(1) */
	delete(1,"已删除"),
	/** 待审核(2) */
	audit(2,"待审核"),
	/** 锁定(3) */
	lock(3,"已锁定");
	
	
	private final Integer value;
	private final String description;
	
	private StatusState(Integer value,String description){
		this.value=value;
		this.description=description;
	}
	/**
	 * 获取值
	 * @return value
	 */
	public Integer getValue(){
		return this.value;
	}
	/**
     * 获取描述信息
     * @return description
     */
	public String getDescription(){
		return this.description;
	}
	/**
	* 根据状态值，取得描述。不建议使用。
	* @param value
	* @return  
	* @Title: getStatusState
	* @author JoseanLuo  
	* @date 2014年8月29日 上午10:10:17
	* @version V1.0
	 */
	public static StatusState getStatusState(Integer value) {
		if (null == value)
			return null;
		for (StatusState _enum : StatusState.values()) {
			if (value.equals(_enum.getValue()))
				return _enum;
		}
		return null;
	}
	/**
	 * 
	* 根据描述，取得状态值。
	* @param description
	* @return  
	* @Title: getStatusState
	* @author JoseanLuo  
	* @date 2014年8月29日 上午10:11:40
	* @version V1.0
	 */
	public static StatusState getStatusState(String description) {
		if (null == description)
			return null;
		for (StatusState _enum : StatusState.values()) {
			if (description.equals(_enum.getDescription()))
				return _enum;
		}
		return null;
	}
}
